package com.sitech.openapi.domain.ProductOrder;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.io.Serializable;
import java.util.List;

@ApiModel(value = "AccessProdOrderItem", description = "接入类订单项")
public class AccessProdOrderItem implements Serializable {

    private static final long serialVersionUID = 1L;

    // 记录订单项标识。
    @ApiModelProperty(value = "订单项标识")
    private Long orderItemId;

    // 记录客户订单标识
    @ApiModelProperty(value = "客户订单标识")
    private Long custOrderId;

    // 引用资源ServiceOffer
    @ApiModelProperty(value = "服务提供标识")
    private Long serviceOfferId;

    // 引用对象Product
    @ApiModelProperty(value = "产品业务编码")
    private String prodNbr;

    // 引用对象Product
    @ApiModelProperty(value = "产品名称")
    private String prodName;

    // 引用对象ProdInst
    @ApiModelProperty(value = "产品实例标识")
    private Long prodInstId;

    // 引用对象ProdInst
    @ApiModelProperty(value = "外部产品实例标识")
    private String extProdInstId;

    // 记录备注信息。
    @ApiModelProperty(value = "备注")
    private String remark;

    // 记录外部订单项标识
    @ApiModelProperty(value = "外部订单项标识")
    private String extOrderItemId;

    // 引用对象Customer
    @ApiModelProperty(value = "使用客户")
    private Long useCustId;

    // 引用对象Customer
    @ApiModelProperty(value = "外部使用客户")
    private String extUseCustId;

    // 引用对象Customer
    @ApiModelProperty(value = "产权客户")
    private Long ownerCustId;

    // 引用对象Customer
    @ApiModelProperty(value = "外部产权客户")
    private String extOwnerCustId;

    // 引用对象Customer
    @ApiModelProperty(value = "责任人客户标识")
    private Long respCustId;

    // 引用对象Customer
    @ApiModelProperty(value = "外部责任人客户标识")
    private String extRespCustId;

    // 付费模式
    @ApiModelProperty(value = "付费模式")
    private String paymentModeCd;

    // PRI-0001	付费模式
    @ApiModelProperty(value = "产品实例密码")
    private String prodInstPwd;

    // 产品实例密码
    @ApiModelProperty(value = "接入号码")
    private String accNum;

    // 记录用户接入号码
    @ApiModelProperty(value = "本地网标识")
    private String lanId;

    // 记录归属本地网标识
    @ApiModelProperty(value = "产品实例状态")
    private String prodInstStatus;

    // 参考主数据
    @ApiModelProperty(value = "功能类产品订单项")
    private List<FuncProdOrderItem> funcProdOrderItems;

    //
    @ApiModelProperty(value = "订单-帐务定制关系")
    private List<OrdProdInstAcctRel> ordProdInstAcctRels;

    // 引用一组资源 ResInstRel
    @ApiModelProperty(value = "资源实例关系")
    private List<ResInstRel> resInstRels;

    // 引用一组资源 OrdDevStaffInfo
    @ApiModelProperty(value = "订单-发展人信息")
    private List<OrdDevStaffInfo> ordDevStaffInfos;

    // 引用一组资源ResInstRel
    @ApiModelProperty(value = "接入类产品订单项属性")
    private List<AccessProdOrderItemAttr> accessProdOrderItemAttrs;

    public Long getOrderItemId() {
        return orderItemId;
    }

    public void setOrderItemId(Long orderItemId) {
        this.orderItemId = orderItemId;
    }

    public Long getCustOrderId() {
        return custOrderId;
    }

    public void setCustOrderId(Long custOrderId) {
        this.custOrderId = custOrderId;
    }

    public Long getServiceOfferId() {
        return serviceOfferId;
    }

    public void setServiceOfferId(Long serviceOfferId) {
        this.serviceOfferId = serviceOfferId;
    }

    public String getProdNbr() {
        return prodNbr;
    }

    public void setProdNbr(String prodNbr) {
        this.prodNbr = prodNbr;
    }

    public String getProdName() {
        return prodName;
    }

    public void setProdName(String prodName) {
        this.prodName = prodName;
    }

    public Long getProdInstId() {
        return prodInstId;
    }

    public void setProdInstId(Long prodInstId) {
        this.prodInstId = prodInstId;
    }

    public String getExtProdInstId() {
        return extProdInstId;
    }

    public void setExtProdInstId(String extProdInstId) {
        this.extProdInstId = extProdInstId;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    public String getExtOrderItemId() {
        return extOrderItemId;
    }

    public void setExtOrderItemId(String extOrderItemId) {
        this.extOrderItemId = extOrderItemId;
    }

    public Long getUseCustId() {
        return useCustId;
    }

    public void setUseCustId(Long useCustId) {
        this.useCustId = useCustId;
    }

    public String getExtUseCustId() {
        return extUseCustId;
    }

    public void setExtUseCustId(String extUseCustId) {
        this.extUseCustId = extUseCustId;
    }

    public Long getOwnerCustId() {
        return ownerCustId;
    }

    public void setOwnerCustId(Long ownerCustId) {
        this.ownerCustId = ownerCustId;
    }

    public String getExtOwnerCustId() {
        return extOwnerCustId;
    }

    public void setExtOwnerCustId(String extOwnerCustId) {
        this.extOwnerCustId = extOwnerCustId;
    }

    public Long getRespCustId() {
        return respCustId;
    }

    public void setRespCustId(Long respCustId) {
        this.respCustId = respCustId;
    }

    public String getExtRespCustId() {
        return extRespCustId;
    }

    public void setExtRespCustId(String extRespCustId) {
        this.extRespCustId = extRespCustId;
    }

    public String getPaymentModeCd() {
        return paymentModeCd;
    }

    public void setPaymentModeCd(String paymentModeCd) {
        this.paymentModeCd = paymentModeCd;
    }

    public String getProdInstPwd() {
        return prodInstPwd;
    }

    public void setProdInstPwd(String prodInstPwd) {
        this.prodInstPwd = prodInstPwd;
    }

    public String getAccNum() {
        return accNum;
    }

    public void setAccNum(String accNum) {
        this.accNum = accNum;
    }

    public String getLanId() {
        return lanId;
    }

    public void setLanId(String lanId) {
        this.lanId = lanId;
    }

    public String getProdInstStatus() {
        return prodInstStatus;
    }

    public void setProdInstStatus(String prodInstStatus) {
        this.prodInstStatus = prodInstStatus;
    }

    public List<FuncProdOrderItem> getFuncProdOrderItems() {
        return funcProdOrderItems;
    }

    public void setFuncProdOrderItems(List<FuncProdOrderItem> funcProdOrderItems) {
        this.funcProdOrderItems = funcProdOrderItems;
    }

    public List<OrdProdInstAcctRel> getOrdProdInstAcctRels() {
        return ordProdInstAcctRels;
    }

    public void setOrdProdInstAcctRels(List<OrdProdInstAcctRel> ordProdInstAcctRels) {
        this.ordProdInstAcctRels = ordProdInstAcctRels;
    }

    public List<ResInstRel> getResInstRels() {
        return resInstRels;
    }

    public void setResInstRels(List<ResInstRel> resInstRels) {
        this.resInstRels = resInstRels;
    }

    public List<OrdDevStaffInfo> getOrdDevStaffInfos() {
        return ordDevStaffInfos;
    }

    public void setOrdDevStaffInfos(List<OrdDevStaffInfo> ordDevStaffInfos) {
        this.ordDevStaffInfos = ordDevStaffInfos;
    }

    public List<AccessProdOrderItemAttr> getAccessProdOrderItemAttrs() {
        return accessProdOrderItemAttrs;
    }

    public void setAccessProdOrderItemAttrs(List<AccessProdOrderItemAttr> accessProdOrderItemAttrs) {
        this.accessProdOrderItemAttrs = accessProdOrderItemAttrs;
    }

    @Override
    public String toString() {
        return "AccessProdOrderItem{" +
                "orderItemId=" + orderItemId +
                ", custOrderId=" + custOrderId +
                ", serviceOfferId=" + serviceOfferId +
                ", prodNbr='" + prodNbr + '\'' +
                ", prodName='" + prodName + '\'' +
                ", prodInstId=" + prodInstId +
                ", extProdInstId='" + extProdInstId + '\'' +
                ", remark='" + remark + '\'' +
                ", extOrderItemId='" + extOrderItemId + '\'' +
                ", useCustId=" + useCustId +
                ", extUseCustId='" + extUseCustId + '\'' +
                ", ownerCustId=" + ownerCustId +
                ", extOwnerCustId='" + extOwnerCustId + '\'' +
                ", respCustId=" + respCustId +
                ", extRespCustId='" + extRespCustId + '\'' +
                ", paymentModeCd='" + paymentModeCd + '\'' +
                ", prodInstPwd='" + prodInstPwd + '\'' +
                ", accNum='" + accNum + '\'' +
                ", lanId='" + lanId + '\'' +
                ", prodInstStatus='" + prodInstStatus + '\'' +
                ", funcProdOrderItems=" + funcProdOrderItems +
                ", ordProdInstAcctRels=" + ordProdInstAcctRels +
                ", resInstRels=" + resInstRels +
                ", ordDevStaffInfos=" + ordDevStaffInfos +
                ", accessProdOrderItemAttrs=" + accessProdOrderItemAttrs +
                '}';
    }
}
